Systems and methods of generating a content aware interface

ABSTRACT

Systems and methods for generation of a content aware internet application interface including multiple content regions. A primary region populated by content including a content parameter for use in selecting, retrieving or configuring content of a secondary region. The secondary region content being selected, retrieved or configured responsive to the data found in the primary region content. The internet application interface is generated using a content manager configure to manage processing of the primary region content and selection or configuration of the second region content accordingly. In various embodiments the internet application interface is configured to access a internet application through a browser.

BACKGROUND

[0001] 1. Field of the Invention

[0002] The invention is in the field of software engineering and specifically in the field of internet application interfaces.

[0003] 2. Prior Art

[0004] Advances in network based computing systems have spurred the development of graphical user interfaces specifically designed for accessing applications or exchanging data over a computer network. For example, internet browsers have been developed to access files and applications over the Internet. These browsers may display internet application interfaces designed to facilitate interaction with an internet application or internet application interfaces configured as web portals to content distributed throughout the World Wide Web.

[0005] Internet application interfaces often include interface elements distributed in a logical arrangement to maximize ease of navigation and delivery of content to a user. For example, some internet application interfaces include spatially separate regions. One region may include content, such as a news story or results of a query, requested by a user. Another region may include a small “pagelet” of content such as a stock ticker or other data.

[0006] In a typical example, a user requests information through a web portal such as a search engine. The request includes search terms and results in execution of a query. The query results are retrieved and included in a region of a new internet application interface presented to the user. Additional content is retrieved based on the search terms and is included in another region of the new internet application interface.

[0007] In another example, a user requests a news story. The news story is retrieved using a Universal Resource Locator (URL) and displayed in a region of an internet application interface. A list of additional news stories is retrieved and displayed in another region of the internet application interface. In some instances, the retrieval of additional news stories is based on the URL used to retrieve the original news story. For example, the retrieval of additional news stories may include using part of the URL as a search term.

[0008] In both of these examples, however, the content in the other region is based on the user's request. This limits the extent of the content in the other regions. Thus, there is a need for improved systems and methods of generating interfaces with multiple regions with an even greater range of related content.

SUMMARY OF THE INVENTION

[0009] The invention includes systems and methods for customizing, generating and updating an internet application interface. The internet application interface includes at least one primary and at least one secondary region. Contents of the primary region are retrieved and processed to identify data for use in retrieving, configuring or updating content of the secondary region. An interface definition is optionally used to characterized positions of the primary and secondary regions within the internet application interface.

[0010] Some embodiments of the invention include an internet application interface comprising a primary display region configured to include a primary content, a secondary display region configured to include secondary content automatically retrieved responsive to part of the primary content, and structure data configured to determine a position of the secondary display region within the internet application interface.

[0011] Some embodiment of the invention include an internet application interface comprising a primary display region configured to include a primary content having a content parameter, and a secondary display region configured to include a secondary content, the presence of the secondary display region being responsive to detection of the content parameter in the primary region content, and structure data configured to determine a position of the secondary display region within the internet application interface.

[0012] Some embodiment of the invention include a computer readable medium comprising an interface definition defining an internet application interface having a first display region and a second display region, the first display region configured to include a primary content having a content parameter, the second display region configured to include a secondary content, the second display region being associated with the content parameter, and a content manager configured to process the primary content and to configure the secondary content responsive to the content parameter.

[0013] Some embodiment of the invention include an internet application comprising an internet application interface including a primary display region configured to include a primary content, a secondary display region configured to include a secondary content automatically retrieved responsive to part of the primary content, and structure data configured to determine a position of the secondary display region within the internet application interface.

[0014] Some embodiment of the invention include a method of generating an internet application interface, the method comprising the steps of (1) retrieving an interface definition defining a primary display region of the internet application interface, a secondary display region of the internet application interface, and a location of the secondary display region within the application interface, (2) retrieving a primary content including a content parameter, (3) executing computer instructions to process the primary content, (4) detecting the content parameter in the primary content, (5) retrieving the content parameter from the primary content, (6) retrieving a secondary content using the content parameter, (7) including the primary content in the primary display region, and (8) including the secondary content in the secondary display region.

[0015] Some embodiment of the invention include a method of updating an internet application interface, the method comprising the steps of (1) updating a primary content of a primary display region within the internet application interface, (2) executing computer instructions to process the updated primary content, (3) detecting a content parameter in the primary content, (4) retrieving the content parameter from the primary content, and (5) automatically updating a secondary display region of the internet application interface using the content parameter.

[0016] Some embodiment of the invention include a method of defining an internet application interface, the method comprising the steps of (1) accessing a configuration interface, (2) selecting a secondary display region of the internet application interface using the configuration interface, the secondary display region being associated with a primary display region, the primary region being configured to include primary content having a content parameter, (3) associating the content parameter with the secondary display region, and (4) saving data defining the association of the content parameter with the secondary display region.

[0017] Some embodiment of the invention include an internet application interface generation system comprising data storage configured to store an interface definition, the interface definition defining a primary display region of an internet application interface, a secondary display region of the internet application interface and a position of the secondary display region within the internet application interface, the primary display region being configured to include a first content, the second display region being configured to include a secondary content, and means for retrieving the secondary content responsive to a part of the first content.

BRIEF DESCRIPTION OF THE VARIOUS VIEWS OF THE DRAWING

[0018]FIG. 1 illustrates an internet application interface according to various embodiments of the invention;

[0019]FIG. 2 illustrates interface data according to various embodiments of the invention;

[0020]FIG. 3 illustrates an embodiment of the invention including a server system configured to receive requests for the internet application interface of FIG. 1 and configured to generate the interface data of FIG. 2;

[0021]FIG. 4 illustrates a method of generating an internet application interface according to some embodiments of the invention;

[0022]FIG. 5 illustrates an alternative method of generating an internet application interface according to some embodiments of the invention;

[0023]FIG. 6 illustrates a method of updating an internet application interface according to various embodiments of the invention;

[0024]FIG. 7 illustrates a method of customizing the selection, retrieval and display of secondary content according to various embodiments of the invention;

[0025]FIG. 8 illustrates a content type selection interface according to some embodiments of the invention; and

[0026]FIG. 9 illustrates a list of secondary content (pagelets) to be displayed in an internet application interface.

DISCLOSURE OF THE INVENTION

[0027] Embodiments of the invention include a network or application interface having at least two separate display regions, a primary region and a secondary region. The primary region includes primary content, such as an article or query results, requested by a user, while the secondary region includes secondary content, such as links or reference material, related to the primary content. The secondary content, included in the secondary region, is determined using data (content parameters) found within the primary content of the primary region.

[0028] In a typical embodiment of the invention an internet application interface for display to a user is assembled by first retrieving the primary content, processing the primary content to find included content parameters, selecting secondary content using found content parameters and then displaying the internet application interface with primary and secondary regions populated by the primary and secondary content, respectively. For example, in response to a user request for a newspaper article the article is first retrieved as primary content. The primary content is processed to identify content parameters within the primary content. These content parameters may be, for example, hypertext markup language (HTML) tags or data indicating a stock ticker symbol, a company name, a personal name, a subject index key, URL parameters, Extensible Markup Language (XML) attributes, metadata, part of a data transfer protocol (e.g., Hypertext Transfer Protocol headers), or some other part of the primary content. When content parameters are found in the primary content they are used to select, retrieve and/or configure secondary content for display in the secondary region. The secondary content is optionally customized by a user or administrator. For example, a user may customize a secondary region to show stock data when a content parameter including a stock symbol is found in primary content. The customized secondary region will be displayed and populated with current price data retrieved using the stock symbol.

[0029] The invention eliminates may of the restrictions of the prior art. Since the secondary content is determined using data that is part of the primary content, rather than merely a URL or search term used to located the primary content, the systems and methods of the invention provide a more versatile system than the prior art. For example, primary content can be used in a variety of internet application interfaces without having to establish its relationship to secondary content within each internet application interface. Also, changes made to primary content may automatically affect selection, retrieval and/or configuration of secondary contact without reconfiguration of the internet application interface. In addition, secondary content may be added to an internet application interface by a developer, administrator or user without extensive modification of the internet application interface or knowledge of the primary content to be displayed. These abilities greatly improve the portability of both primary and secondary content.

[0030]FIG. 1 illustrates an Internet Application Interface 100 according to various embodiments of the invention. Internet Application Interface 100 includes a Primary Region 110, configured to display Primary Content 115, and at least one Secondary Region 120, configured to display Secondary Content 125. Primary Region 110 and Secondary Region 120 optionally do not overlap. Internet Application Interface 100 is typically displayed in a single window on a client computer. In various embodiments Internet Application Interface 100 is displayed using a browser such as Microsoft Internet Explorer® or Netscape Navigator®. Internet Application Interface 100 is optionally a web portal used to aggregate, display and/or provide access to information from several locations on the World Wide Web.

[0031] The Primary Content 115 of Primary Region 110 may include any of the types of information typically accessed through an internet application interface. For example, in various embodiments this information includes text (e.g., news stories, HTML pages, .pdf files, etc.), images (e.g., .gif or jpg files, etc.), data generated using scripts, application program output, the results of queries or the like. Primary Content 115 also optionally includes Content Parameter 118 used to select and configure Secondary Content 125 of Secondary Region 120. Like Primary Content 115, Secondary Content 125 may include text, HTML, links, images, data generated using scripts, program output, query results or the like. Secondary Content 125 is optionally received from or generated by third party resources. For example, in one embodiment Secondary Content 125 includes results generated by a search engine (e.g., Google® or Dogpile®) in response to a query that included a search term found in Content Parameter 118 of Primary Content 115. In another embodiment Secondary Content 125 includes graphics generated by a third party stock tracking service or a list of related links retrieved using a keyword found in Content Parameter 118.

[0032] Internet Application Interface 100 is typically displayed to a user on a client using data received from a server. In some embodiments, HTML frames are used to define the size and position of Primary Region 110 and Secondary Region 120 as displayed on the client. In these embodiments Primary Content 115 may be delivered to the client prior to determination and/or delivery of Secondary Content 125. In alternative embodiments, Primary Content 115 and Secondary Content 125 are combined within a single HTML page at the server and then delivered to the client.

[0033] Some embodiments of the invention include a plurality of Secondary Region 120 whose Secondary Content 125 is responsive to part of Primary Region 110. Each member of this plurality may, for example, have different Secondary Content 125 that is optionally responsive to one or more Content Parameter 118 within Primary Region 110. Some embodiments of Internet Application Interface 100 include tertiary regions configured to include tertiary content. Tertiary regions and tertiary content are responsive to a part of Secondary Content 125 in manners analogous to the responsiveness of Secondary Region 120 and Secondary Content 125 to a part of Primary Content 115. In these embodiments, Secondary Content 125 includes one or more Content Parameter 118 to which the tertiary content is responsive. A region may be both one of the plurality of Secondary Region 120 and a tertiary region, and thus be responsive to both Primary Content 115 of a Primary Region 110 and Secondary Content 125 of some other Secondary Region 120.

[0034]FIG. 2 illustrates Interface Data 200 according to various embodiments of the invention. Interface data 200 is delivered from a server to a client wherein it is used to display Internet Application Interface 100. Interface data 200 includes Structure Data 210 that defines structural characteristics of various regions (e.g., Primary Region 110 and Secondary Region 120) and/or Internet Application Interface 100. These definitions optionally include data configured to determine positions and dimensions of one or more of these regions. Specified positions are optionally relative to coordinates of the internet application interface, to other regions, or the like. For example, in various embodiments, Structure Data 210 includes data specifying HTML frames, HTML tables, image positions, text margins, or other layout information interpretable using a browser.

[0035] Interface data 200 also includes Region Content 220 having data for populating Primary Region 110 and Secondary Region 120 (FIG. 1) with information to be displayed to a user. In some embodiments Region Content 220 includes Primary Content 115 and Secondary Content 125. In other embodiments Primary Content 115 and/or Secondary Content 125 are replaced or supplemented, in Region Content 220, by a retrieval mechanism for retrieving Primary Content 115 and/or Secondary Content 125. This mechanism optionally includes computer instructions, queries, URLs, pointers, directory paths or the like. For example, in a typical embodiment Region Content 220 includes a URL, used to retrieve Primary Content 115, and Javascript associated with Secondary Region 120. The Javascript is configured to be transferred to a client, to process Primary Content 115 on the client and to detect Content Parameter 118 in Primary Content 115. The Javascript is further optionally configured to use found Content Parameter 118 to select, retrieve and/or configure Secondary Content 125.

[0036] Structure Data 210 and Region Content 220 are optionally intermingled in one or more data set. For example, in alternative embodiments Primary Content 115 and Secondary Content 125 are combined into a single HTML file as part of a server side operation. In these embodiments Structure Data 210 includes HTML formatting information and Region Content 220 includes HTML text or graphics. The HTML file is delivered from a server to a client as Interface data 200.

[0037]FIG. 3 illustrates an embodiment of the invention including an Internet Application System generally designated 300 and having a Server System 302. Server System 302 being configured to receive requests for Internet Application Interface 100 (FIG. 1) and being further configured to generate Interface Data 200 (FIG. 2). In various embodiments Server System 302 is a single computing device or a distributed computer system. Communication between Server System 302 and an external Client 310, configured to display Internet Application Interface 100, is facilitated by an External Interface 320. External Interface 320, typically a network interface, may also be configured to communicate with Content Data Storage 330, wherein data for inclusion in Region Content 220 (FIG. 2) is optionally stored. In various embodiments External Interface 320 is a web server and Content Data Storage 330 is a network location including a file server. For example, in these embodiments, Content Data Storage 330 may include a location on a local area net work, a wide area network, and/or the internet.

[0038] Generation of Interface Data 200 within Server System 302 is managed by a Content Manager 340. In response to a request for an Internet Application Interface 100, Content Manager 340 is configured to access a Data Storage 350 and retrieve Interface Definition 360 included therein. Data Storage 350 optionally includes a database system configured to store and manage retrieval of Interface Definition 360 and/or Content Source 370 described in further detail herein. The Content Manager 340 uses Interface Definition 360 as a guide to the generation of Internet Application Interface 100. For example, in some embodiments Interface Definition 360 includes information defining a layout of Internet Application Interface 100 and is used to construct Structure Data 210. In typical embodiments Content Manager 340 is configured to use Interface Definition 360 in combination with Content Source 370 to retrieve Primary Content 115 and Secondary Content 125.

[0039] In some embodiments, Interface Definition 360 includes data indicating types of Secondary Content 125 that may be included in Internet Application Interface 100. For example, in one embodiment Interface Definition 360 includes data indicating that three types of Secondary Content 125 may be included. These types include, for example, a stock ticker, a list of related links, a list of outstanding orders, a list of related .pdf documents, list of alternatives, associated images or the like. As described in further detail herein the types of Secondary Content 125 that may be included in an instance of Internet Application Interface 100 is determined by a developer, administrator, or user. While a type of Secondary Content 125 specified in Interface Definition 360 may be included in Internet Application Interface 100, inclusion of Secondary Content 125 is optionally dependant on finding an associated Content Parameter 118 in Primary Content 115. Thus, data within Interface Definition 360 is used by Content Manager 340 to determine a list of allowed Secondary Content 125 types and one or more Content Parameter 118, found in Primary Content 115, are used to determine which of the allowed types will actually be included in Internet Application Interface 100.

[0040] Content Source 370 includes data used to generate Region Content 220 (FIG. 2) and/or to retrieve Primary Content 115 and Secondary Content 125 (FIG. 1). This data includes pointers, file names, universal resource locators, database keys, IP addresses or the like. In some embodiments Content Source 370 includes a query or data configured to call an external process such as a third party program that in turn produces and/or retrieves Region Content 220. In some embodiments, Content Source 370 includes a list of universal resource locators and queries associated with each type of allowed Secondary Content 125. In these embodiments, when Content Manager 340 determines that a type of Secondary Content 125 should be included in Internet Application Interface 100, an associated element on the list is used to retrieve the appropriate Secondary Content 125 from Content Data Storage 330. For example, in some embodiments Secondary Content 125 is retrieved from Content Data Storage 330 including a file server on a local network and in some embodiments Secondary Content 125 is retrieved from Content Data Storage 330 including a server on the internet. In alternative embodiments part of Primary Content 115 and/or Secondary Content 125 is stored directly in Content Source 370. For example, in an embodiment wherein Primary Content 115 is basic vendor information and Secondary Content 125 includes open orders from the vendor, both are optionally retrieved from a local database included in Content source 370.

[0041] In embodiments of the invention wherein Primary Content 115 is processed as a server side process, Content Manager 340 is configured to generate Interface Data 200 by processing Primary Content 115, extracting Content Parameter 118 included therein, and using the extracted Content Parameter 118 to retrieve and/or configure Secondary Content 120. In some embodiments, Content Manager 340 is further configured to assemble Primary Content 115 and Secondary Content 120 into a single HTML file for delivery to Client 310 as Region Content 220. In other embodiments Content Manager 340 is further configured to assemble Structure Data 210 including links to Primary Content 115 and/or Secondary Content.

[0042] In embodiments wherein Primary Content 115 is processed on Client 310, Content Manager 340 is configured to generate Interface Data 200 including computer instructions for processing Primary Content 115 and retrieving appropriate Secondary Content 125. This Interface Data 200 is delivered to Client 310 where processing of Primary Content 115 takes place. For example, in one embodiment Region Content 220, associated with a specific Secondary Region 120, includes Javascript configured to process Primary Content and retrieve HTML data (Secondary Content 125) from a specific network location (e.g., URL or file) in response to finding a specific Content Parameter 118.

[0043] In some embodiments Server System 302 includes an Internet Application 380 configured for access using Internet Application Interface 100 (FIG. 1). For example, in one embodiment Internet Application 380 is a vendor manager. In this embodiment a query to Internet Application 380 may generate a list of vendors. As the name, address, and contact information of each vendor is displayed in Primary Region 110 of Internet Application Interface 100, Secondary Content 125, relating to the vendor currently displayed, is included in Secondary Region 120. When a user requests that the next vendor in the query result be displayed, new vendor information is displayed in Primary Region 110 and the Secondary Content 125 of Secondary Regions 120 is automatically updated to reflect the new Primary Content 115 and any Content Parameter 118 therein.

[0044] In some embodiments Server System 302 includes a Customization Utility 390 configured to modify Interface Definition 360. Customization Utility 390 is configured to add additional Secondary Region 120, associate Secondary Region 120 with Primary Region 110, select a type of Secondary Content 125 to be included in Secondary Region 120, and select Content Parameter 118 or type thereof to which retrieval or configuration of Secondary Content 125 should be responsive. Customization Utility 390 is optionally an application interface development tool and/or a user configuration interface.

[0045]FIG. 4 illustrates a method, generally designated 400, of generating Internet Application Interface 100 according to some embodiments of the invention. In a Receive Request Step 410 Content Manager 340 receives a request for Internet Application Interface 100 to be delivered to Client 310. This request may be generated, for example by Client 310 or by Internet Application 380. The request typically includes information, used to identify Primary Content 115 or Interface Definition 360 associated with the requested Internet Application Interface 100.

[0046] In a Retrieve Primary Content Step 420, Primary Content 115 is retrieved, for example from Content Data Storage 330 (FIG. 3). For example, in some embodiments Primary Content 115 is retrieved from a location on the Internet. In some embodiments Primary Content 115 is retrieved from a file server included in Server System 302 (FIG. 3). In a Process Primary Content Step 430, Primary Content 115 is examined (e.g., parsed) by executing computer instructions located on either Server System 302 or Client 310 (FIG. 3). For example, in some embodiments the computer instructions are included in Interface Data 200 (FIG. 2), downloaded to Client 310 and therein used to process Primary Content 115. The examination of Process Primary Content Step 430 includes finding Content Parameter 118, if present, within Primary Content 115. In a Read Found Content Parameter Step 440 any found Content Parameter 118 is read by the computer instructions. Process Primary Content Step 430 and Read Found Content Parameter Step 440 are optionally combined in a step of identifying Content Parameter 118. The read Content Parameter 118 is used, in a Retrieve Secondary Content Step 450, to retrieve, select and/or configure Secondary Content 125. In some embodiments, Retrieve Secondary Content Step 450 is optionally repeated to retrieve another Secondary Content 125 for inclusion in another Secondary Display Region 120. In a Display Step 460, the Secondary Content 125 and the retrieved Primary Content 115 are displayed in Secondary Region 120 and Primary Region 110, respectively. The steps illustrated in FIG. 4 do not require modification of Primary Content 115.

[0047]FIG. 5 illustrates an alternative method, generally designated 500, of generating internet application interface 100, according to some embodiments of the invention. In a Receive Request Step 510 a request for Internet Application Interface 100 is received by Content Manager 340. This request may originate from Client 310, Internet Application 380, or other processes within Server System 302. The request typically includes a universal resource locator, pointer, file name, query parameter or other data for identifying Internet Application Interface 100 or Primary Content 115. In some embodiments the request includes a universal resource locator associated with the location of Interface Definition 360.

[0048] In a Retrieve Interface Definition Step 520, Interface Definition 360 is retrieved from Data Storage 350 by Content Manager 340. In some embodiments, Interface Definition 360 is an HTML file including HTML frames. In other embodiments Interface Definition 360 includes a style sheet or alternative markup language such as XML. In some embodiments Interface Definition 360 includes program instructions, such as Javascript, that can be executed using Content Manager 340. Interface Definition 360 optionally includes data configured to determine if Primary Content 115 is processed on Server System 302 or Client 310.

[0049] In a Retrieve Primary Content Step 530 information within Interface Definition 360 and/or Content Sources 370 is used to retrieve Primary Content 115. The retrieval may include accessing an HTML file, execution of a third party program, execution of a query the results of which are included in Primary Content 115, or the like. Primary Content 115 is optionally retrieved using data included in the request received in Receive Request Step 510. For example, the request received in Receive Request step 510 may include a parameter used as a search term in Retrieve Primary Content Step 530.

[0050] After Primary Content 115 is retrieved in Retrieve Primary Content Step 530 the retrieved Primary Content 115 is processed in a Process Primary Content Step 540. Processing is performed as determined by Content Manager 340 and may occur on Server System 302 and/or on Client 310. Process Primary Content Step 540 includes an examination of Primary Content 115 in search of one or more Content Parameter 118. This step is applied to all of Primary Content 115 or, alternatively, to a subset of Primary Content 115. For example, in one embodiment only a subset of Primary Content 115 is displayed in Primary Region 110 and only this subset is processed in Process Primary Content Step 540.

[0051] If at least one Content Parameter 118 is found in Process Primary Content Step 540 the method proceeds to a Read Found Content Parameter Step 550 wherein the found Content Parameter 118 is read from Primary Content 115. This step optionally includes separating the found Content Parameter 118 from markup data configured to identify data as Content Parameter 118. Read Found Content Parameter Step 550 optionally includes storage of the found Content Parameter 118 in a location accessible to processes used to select and configure Secondary Content 125. Process Primary Content Step 540 and Read Found Content Parameter Step 550 are optionally combined in an identify Content Parameter 118 step.

[0052] In a Retrieve Secondary Content Step 560 the Contact Parameter 118, read in Read Found Content Parameter Step 550, is used to retrieve and/or configure Secondary Content 125. In various embodiments this step includes reading a file including text, image, markup language or script, execution of a query, execution of a third party process, or the like. For example, in one embodiment Retrieve Secondary Content Step 560 includes execution of a third party process configured to generate a graph of stock prices. The process is executed using a stock symbol derived from Contact Parameter 118 read in Read Found Content Parameter Step 550. In another example, an embodiment of Retrieve Secondary Content Step 560 includes execution of a query on a database of news stories. The query returns a list of stories relating to a search term derived from Contact Parameter 118 read in Read Found Content Parameter Step 550. Each Content Parameter 118 read in Read Found Content Parameters Step 550 is optionally used to determine and configure Secondary Content 125 in one or more Secondary Region 120.

[0053] In an Incorporate Content Step 570, Secondary Content 125 and Primary Content 115 are incorporated into Interface Data 200 such that they populate Secondary Region 120 and Primary Region 110, respectively. In alternative embodiments Incorporate Content Step 570 is performed in multiple steps occurring as each part of Region Content 220 (e.g., Primary Content 115 and Secondary Content 125) becomes available. Incorporate Content Step 570 is performed on either Server System 302 or Client 310.

[0054] In an optional Display Step 580 Internet Application Interface 100 is displayed to a user of Client 310. In some embodiments, Display Step 580 begins before all of Region Content 220 is received by Client 310. In alternative embodiments Display Step 580 does not begin until all of Secondary Content 125 has been received. As further described in reference to FIG. 6, Display Step 580 optionally includes updates to Primary Content 115 and Secondary Content 125 that occur after Internet Application Interface 100 is displayed to a user.

[0055]FIG. 6 illustrates a method of updating Internet Application Interface 100 according to various embodiments of the invention. This method is optionally included in Display Step 580 (FIG. 5). Updates are advantageous when displayed Primary Content 115 is changed without completely refreshing Internet Application Interface 100. This may occur, for example, when Primary Content 115, displayed in Primary Region 110, relates to one element in a query result. When a user chooses to see a next element in the query result the displayed Primary Content 115 is updated and, according to the method of FIG. 6, Secondary Content 125 is updated in response. In alternative embodiments an update to Internet Application Interface 100 is initiated by a request to display an alternative subset or a different arrangement of current Primary Content 115.

[0056] In an Update Primary Content Step 610, Primary Content 115 of Primary Region 110 is updated. This update may result from, for example a user request for a new rendition of Internet Application Interface 100, a request for display of the next set of data in a query result, data entered by a user in a form associated with Primary Content 115, a request for a new Internet Application Interface 100, or the like. Update Primary Content Step 610 includes selection and/or retrieval of new Primary Content 115 for display in Primary Region 110.

[0057] The new Primary Content 115 is processed in a Process Primary Content Step 620. In some embodiments Process Primary Content Step 620 is analogous to Process Primary Content Step 540 (FIG. 5) except that new Primary Content 115 is processed. In alterative embodiments Process Primary Content Step 620 includes searching for Content Parameter 118 associated with Secondary Content 125 already displayed on Internet Application Interface 100. In these embodiments, Process Primary Content Step 620 is responsive to existing content included in Internet Application Interface 160.

[0058] In a Read Found Content Parameters Step 630 one or more Content Parameter 118 found in Process Primary Content Step 620 is read and written to a location wherein it can be accessed by program instructions configured to update Secondary Content 125.

[0059] In a Retrieve Secondary Content Step 640, Secondary Content 125 is automatically updated and/or retrieved in response to Content Parameter 118 read in Read Found Content-Parameter Step 630. In some embodiments Retrieve Secondary Content Step 640 includes retrieval of Secondary Content 125 from Content Data Storage 330. In some embodiments Retrieve Secondary Content Step 640 includes selection of a new subset of Secondary Content 125 already retrieved and/or delivered to Client 310. Retrieve Secondary Content Step 640 is optionally responsive to both Content Parameter 118 read in Read Found Content Parameter Step 630 and characteristics of one or more Secondary Content 125 displayed in Secondary Region 120 prior to Update Primary Content Step 610.

[0060] In a Display Step 650, Secondary Region 120 is automatically updated to display the new Secondary Content 125 retrieved, updated or selected in Retrieve Secondary Content Step 640. In Display Step 650 both Primary Region 110 and Secondary Region 120 are updated if needed.

[0061]FIG. 7 illustrates a method, generally designated 700, of customizing the selection, retrieval and display of Secondary Content 125 according to various embodiments of the invention. Method 700 is performed using Customization Utility 390 (FIG. 3) and may be performed by a developer, administrator, or user of Internet Application Interface 100. In an Access Interface Definition Step 710, Customization Utility 390 is used to access Interface Definition 360. This access is optionally through a computer network and/or a browser interface.

[0062] In a Select Secondary Content Type Step 720, Customization Utility 390 is used to select a type of Secondary Content 125 for inclusion, modification or removal from one or more Secondary Region 120. Each type of Secondary Content 125 is optionally associated with and displayed in a separate Secondary Region 120 (“pagelet”) of Internet Application Interface 100. Types of Secondary Content 125 are either defined by a user of Customization Utility 390 or selected from a predefined list of types. Predefined types of Secondary Content 125 optionally include, for example, “Events,” “Headline News,” “Stock Quote,”, “Google® Search,” “Order History,” “Alternative Vendors,” “Related Contacts,” “Index” and the like. Available types are optionally responsive to an identity of Internet Application 380.

[0063] Once selected, characteristics of the selected type of Secondary Content 125, as displayed in the current Internet Application Interface 100, are determined in an optional Specify Content Parameter Type Step 730. These characteristics include, for example, one or more type of Content Parameter 118, to which the type of Secondary Content 125 will be responsive and the range of Internet Application Interface 100 that the customization will apply. The one or more type of Content Parameter 118 to which Secondary Content 125 will be responsive are those that will affect Secondary Region 120 content if found in the primary region content. The range of applicable Internet Application Interface 100 may include, for example, a single internet application interface 100, all internet application interface 100 associated with a business object, all internet application interface 100 associated with Internet Application 380, a set of Internet Application Interface 100 accessed by a specific set of users or the like. In some embodiments selection of a Secondary Content 125 type determines a default Content Parameter 118 type.

[0064] In an optional Determine Position Step 740 the location of the Secondary Region 120 used to display the Secondary Content 125 within Internet Application Interface 100 is specified. In some embodiments this location is determined using an ordered sequence of Secondary Region 120 in Internet Application Interface 100. In some embodiments Determine Position step 740 is omitted and the position of Secondary Region 120 is determined by a default value.

[0065] In a Save Interface Definition Step 750, data specified in steps 730 and 740 is saved to Data Storage 350 where it is accessible during execution of methods such as those illustrated by FIGS. 4-6.

[0066]FIG. 8 illustrates a Content Type Selection Interface 800 according to some embodiments of the invention. Content Type Selection Interface 800 is used in Select Secondary Content Type Step 720 (FIG. 7) to select a type of Secondary Content 125 for modification. Content Type Selection Interface 800 includes a Type Field 810 used to select a type of Secondary Content 125. These types may include, for example, static content or managed content. Managed content is content that is managed by systems and methods of the invention to be responsive to Primary Content 115. A Content Title Field 820 is used to display the title of a selected Secondary Content 125 “pagelet.” An associated Magnifying Glass Button 830 is used to display a list of Secondary Content 125 titles available for selection. Information about a selected Secondary Content 125, such as Data Type 840, Category 843, and Creator Name 846, are displayed to the user in a table below Content Title Field 820. A Save Button 850 is used to save the selection shown in Content Title Field 820 as part of an Internet Application Interface 100.

[0067]FIG. 9 illustrates a List 910 of Secondary Content 125 (“pagelets”) accessed using Magnifying Glass Button 830. List 910 includes a Template Name 920, Ordered Sequence 930, and Label 940 of each Secondary Content 125. An Options Link 960 is optionally used to access a menu for specifying one or more Content Parameter 118 to which Secondary Content 125 will be responsive.

[0068] Template pagelets, such as “PAPP_SURVEY_LINKS_SCR” 945, may optionally include the computer code used to retrieve and configure secondary content. Further options relating to each Secondary Content 125 are set using an Options Link 950. These options may include, for example, selection of a set of Internet Application Interface 100 to which the template should apply.

[0069] Several embodiments are specifically illustrated and/or described herein. However, it will be appreciated that modifications and variations are covered by the above teachings and within the scope of the appended claims without departing from the spirit and intended scope thereof. For example, the Internet Application Interface 100 may include a plurality of Primary Region 110, each associated independently or in combination with one or more Secondary Region 120. A first Secondary Region 120 may also operate as a Primary Region 110 with respect to a tertiary region. Thus, embodiments of the invention optionally include a hierarchical structure of Primary Regions 110, Secondary Regions 120 and tertiary regions. An instance of Secondary Region 120 being responsive to one or more Content Parameter 118 found in Primary Content 115 or Secondary Content 125 associated with other regions. In another example, embodiments of the invention includes Secondary Content 125 or Primary Content 115 that is assembled from several locations at the time it is requested.

[0070] Internet Explorer®, Netscape Navigator®. Google® or Dogpile® are registered trademarks of Microsoft Corporation, AOL, Inc. Google, Inc., and Dogpile, Inc., respectively. 

We claim:
 1. An internet application interface comprising: a primary display region configured to include a primary content having a content parameter; and a secondary display region configured to include a secondary content automatically retrieved responsive to the content parameter.
 2. The internet application interface of claim 1, further including structure data configured to determine a position of the secondary display region within the internet application interface.
 3. The internet application interface of claim 2, wherein the structure data is further configured to determine a position of the primary region in the internet application interface.
 4. The internet application interface of claim 1, wherein the secondary content includes HTML.
 5. The internet application interface of claim 1, wherein the secondary content is automatically retrieved over a computer network.
 6. The internet application interface of claim 1, wherein the secondary region does not overlap with the primary region.
 7. The internet application interface of claim 1, wherein the secondary content is configured responsive to the content parameter.
 8. The internet application interface of claim 1, wherein the automatic retrieval of the secondary content includes a query based on the content parameter.
 9. The internet application interface of claim 1, wherein the automatic retrieval of the secondary content includes execution of a third party process.
 10. The internet application interface of claim 1, wherein the internet application interface is a web portal.
 11. The internet application interface of claim 1, further including a third display region having a tertiary content automatically retrieved responsive to a part of the second content.
 12. The internet application interface of claim 1, further including a plurality of secondary display regions configured to include a plurality of secondary content responsive to one or more parts of the primary content.
 13. The internet application interface of claim 1, wherein the secondary display region includes secondary content responsive to a plurality of content parameters found within the primary content.
 14. The internet application interface of claim 1, further including a plurality of secondary display regions having a plurality of secondary content automatically retrieved responsive to the content parameter.
 15. The internet application interface of claim 1, wherein the secondary content is of a specified type.
 16. The internet application of claim 15, wherein the specified type is user customizable.
 17. An internet application interface comprising: a primary display region configured to include a primary content having a content parameter; and a secondary display region configured to include a secondary content, the presence of the secondary display region being responsive to detection of the content parameter in the primary region content.
 18. The internet application interface of claim 17, further including structure data configured to determine a position of the secondary display region within the internet application interface.
 19. The internet application interface of claim 17, wherein the internet application interface is a web portal.
 20. A computer readable medium having embodied thereon data, the data comprising: an interface definition defining an internet application interface having a first display region and a second display region, the first display region configured to include a primary content having a content parameter, the second display region configured to include a secondary content; and a content manager configured for processing the primary content and for retrieving the secondary content responsive to the content parameter.
 21. The computer readable medium of claim 20, wherein the content manager is further configured for configuring the secondary content responsive to the content parameter.
 22. The computer readable medium of claim 20, wherein the interface definition further defines a position of the second display region within the internet application interface.
 23. The computer readable medium of claim 22, wherein the internet application interface is configured to display a query result.
 24. The computer readable medium of claim 22, wherein the internet application interface is a web portal.
 25. An internet application comprising an internet application interface including: a primary display region configured to include a primary content having a content parameter, a secondary display region configured to include a secondary content automatically retrieved responsive to the content parameter.
 26. The internet application of claim 25, further including structure data configured to determine a position of the secondary display region within the internet application interface.
 27. The internet application of claim 25, wherein the secondary content includes HTML.
 28. The internet application of claim 25, wherein the secondary content includes results of a query.
 29. The internet application of claim 25, wherein the internet application interface is a web portal.
 30. The internet application of claim 25, wherein the secondary display region is further configured such that the secondary content is automatically updated responsive to a change in the primary content.
 31. The internet application of claim 25, further including a tertiary region configured to include a tertiary content.
 32. The internet application of claim 31, wherein retrieval of the tertiary content is responsive to a part of the secondary content.
 33. The internet application of claim 31, wherein retrieval of the tertiary content is responsive to part of the primary content.
 34. A method of generating an internet application interface, the method comprising the steps of: retrieving an interface definition defining a primary display region of the internet application interface and a secondary display region of the internet application interface; retrieving a primary content including a content parameter; identifying the content parameter in the primary content; retrieving a secondary content using the content parameter; including the primary content in the primary display region; and including the secondary content in the secondary display region.
 35. The method of claim 34, wherein the interface definition further defines a location of the secondary display region within the application interface.
 36. The method of claim 34, further including a step of displaying the internet application interface including the primary display region and the secondary display region.
 37. The method of claim 34, wherein the step of retrieving the secondary content includes execution of a query based on the content parameter.
 38. The method of claim 34, wherein the step of retrieving the secondary content includes execution of a third party process.
 39. The method of claim 34, further including a step of using the content parameter to retrieve another secondary content for inclusion in another secondary display region.
 40. The method of claim 34, wherein the step of identifying the content parameter includes identification of a plurality of content parameters in the primary content.
 41. The method of claim 40, wherein the step of retrieving the secondary content is responsive to the plurality of content parameters.
 42. The method of claim 34, further including steps of identifying an other content parameter in the secondary content, retrieving tertiary content using the other content parameter, and including the tertiary content in a tertiary region of the internet application interface.
 43. The method of claim 34, wherein the internet application interface is a web portal.
 44. The method of claim 34, wherein the interface definition is user customizable.
 45. A method of updating an internet application interface, the method comprising the steps of: updating a primary content of a primary display region within the internet application interface; identifying a content parameter in the updated primary content; and updating a secondary content within a secondary display region of the internet application interface, using the content parameter.
 46. The method of claim 45, wherein the step of updating a secondary content is performed automatically in response to the step of updating the primary content.
 47. The method of claim 46, further including a step of displaying the internet application interface including the primary display region and the secondary display region prior to the step of updating a primary content.
 48. The method of claim 46, further including a step of displaying the updated primary content in the primary display region prior to updating the secondary display content.
 49. The method of claim 46, wherein the step of updating a secondary content includes retrieving secondary content using the content parameter.
 50. The method of claim 49, wherein retrieving secondary content includes executing a query.
 51. The method of claim 49, wherein retrieving secondary content includes executing a third party process.
 52. The method of claim 49, wherein the secondary content is retrieved over a computer network.
 53. The method of claim 45, wherein the step of updating a secondary content includes configuring secondary content using the content parameter.
 54. The method of claim 45, wherein the internet application interface is a web portal.
 55. A method of customizing an internet application interface, the method comprising the steps of: accessing an interface definition defining a primary display region of the internet application interface and a secondary display region of the internet application interface, the primary display region being configured to include primary content having a content parameter; selecting a secondary content type for association with the secondary display region, the secondary display region being configurable to include secondary content of the selected secondary content type, the secondary content being responsive to the content parameter; and saving the interface definition including the secondary content type.
 56. The method of claim 55, further including steps of specifying a content parameter type of the content parameter and saving the content parameter type.
 57. The method of claim 55, wherein the step of selecting a secondary content type is performed using a user configuration interface.
 58. The method of claim 55, further including a step of adding an additional secondary display region to the internet application interface.
 59. The method of claim 55, further including steps of determining a position of the secondary display region within the internet application interface and saving data defining the position.
 60. The method of claim 55, wherein the interface definition is saved on a server system.
 61. A method of generating an internet application interface, the method comprising the steps of: retrieving an interface definition defining a primary display region of the internet application interface and a secondary display region of the internet application interface; retrieving a primary content; processing the primary content to identify a content parameter; including the secondary display region in the internet application interface responsive to identification of a content parameter; including the primary content in the primary display region; and including the primary display region in the internet application interface.
 62. The method of claim 61, further including a step of configuring a secondary content of the secondary display region using the content parameter.
 63. The method of claim 61, wherein the secondary display region is not included in the internet application interface if the content parameter is not identified.
 64. The method of claim 61, wherein the step of including the secondary display region in the internet application interface includes using the interface definition to determine a location of the secondary display region in the internet application interface.
 65. An internet application interface generation system comprising: data storage configured to store an interface definition, the interface definition defining a primary display region of an internet application interface and a secondary display region of the internet application interface, the primary display region being configured to include a first content, the second display region being configured to include a secondary content; and means for retrieving the secondary content responsive to a part of the first content.
 66. The internet application interface generation system of claim 65, wherein the interface definition further defines a position of the secondary display region within the internet application interface.
 67. The internet application interface generation system of claim 65, wherein the interface definition defines a tertiary display region within the internet application interface, the tertiary display region configured to include tertiary content retrieved responsive to a part of the secondary content.
 68. The internet application interface generation system of claim 65, further including means for automatically updating the secondary content responsive to a change in the primary content.
 69. An internet application system comprising: one or more computing devices configured to receive requests for an internet application interface and including data storage configured to store an interface definition, the interface definition defining an internet application interface including a primary region with primary content and a secondary region with secondary content; an internet application configured for access through the internet application interface; a content manager configured for processing of the primary content and retrieval of the secondary content responsive to part of the primary content; and an external interface configured for delivery of the primary content to a client.
 70. The internet application system claim 69, further including the client, the client being configured to display the internet application interface.
 71. The internet application system of claim 69, further including a customization utility configured to modify the interface definition.
 72. An internet application interface generation system comprising: means for defining the internet application interface having a primary display region and a secondary display region the primary display region being configured to include a first content, the second display region being configured to include a secondary content; and means for retrieving the secondary content responsive to a part of the first content.
 73. The system of claim 72, further including means for determining a position of the secondary display region in the internet application interface.
 74. The system of claim 72, wherein the secondary content includes HTML. 